<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.15"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>QuantumLibrary: Bloomberg::quantum::Configuration Class Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../jquery.js"></script>
<script type="text/javascript" src="../../dynsections.js"></script>
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../resize.js"></script>
<script type="text/javascript" src="../../navtreedata.js"></script>
<script type="text/javascript" src="../../navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  $(document).ready(initResizable);
/* @license-end */</script>
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../search/searchdata.js"></script>
<script type="text/javascript" src="../../search/search.js"></script>
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">QuantumLibrary
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="../../menudata.js"></script>
<script type="text/javascript" src="../../menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('../../',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('db/dda/classBloomberg_1_1quantum_1_1Configuration.html','../../');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="../../d3/d4e/classBloomberg_1_1quantum_1_1Configuration-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">Bloomberg::quantum::Configuration Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;<a class="el" href="../../dc/d27/quantum__configuration_8h_source.html">quantum_configuration.h</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a35f313cc4027da35f757762277a456b3"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Configuration.html#a35f313cc4027da35f757762277a456b3">BackoffPolicy</a> : int { <a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Configuration.html#a35f313cc4027da35f757762277a456b3a32a843da6ea40ab3b17a3421ccdf671b">BackoffPolicy::Linear</a>, 
<a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Configuration.html#a35f313cc4027da35f757762277a456b3ac1e19c09f700938f0ff7f1fd4722a3ac">BackoffPolicy::Exponential</a>
 }</td></tr>
<tr class="separator:a35f313cc4027da35f757762277a456b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a422373d17db88e6990ee69796b5f5cf3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Configuration.html#a422373d17db88e6990ee69796b5f5cf3">setNumCoroutineThreads</a> (int num)</td></tr>
<tr class="memdesc:a422373d17db88e6990ee69796b5f5cf3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the number of threads running coroutines.  <a href="#a422373d17db88e6990ee69796b5f5cf3">More...</a><br /></td></tr>
<tr class="separator:a422373d17db88e6990ee69796b5f5cf3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af1735770c472f6c312e161bc83646099"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Configuration.html#af1735770c472f6c312e161bc83646099">setNumIoThreads</a> (int num)</td></tr>
<tr class="memdesc:af1735770c472f6c312e161bc83646099"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the number of threads running IO tasks.  <a href="#af1735770c472f6c312e161bc83646099">More...</a><br /></td></tr>
<tr class="separator:af1735770c472f6c312e161bc83646099"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a769faa15f9cda530a95d9bf1f93764fc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Configuration.html#a769faa15f9cda530a95d9bf1f93764fc">setPinCoroutineThreadsToCores</a> (bool value)</td></tr>
<tr class="memdesc:a769faa15f9cda530a95d9bf1f93764fc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indicate if coroutine threads should be pinned to a core.  <a href="#a769faa15f9cda530a95d9bf1f93764fc">More...</a><br /></td></tr>
<tr class="separator:a769faa15f9cda530a95d9bf1f93764fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acc82f4296d0861c9954b0205eb62c551"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Configuration.html#acc82f4296d0861c9954b0205eb62c551">setLoadBalanceSharedIoQueues</a> (bool value)</td></tr>
<tr class="memdesc:acc82f4296d0861c9954b0205eb62c551"><td class="mdescLeft">&#160;</td><td class="mdescRight">Load balancee the shared IO queues.  <a href="#acc82f4296d0861c9954b0205eb62c551">More...</a><br /></td></tr>
<tr class="separator:acc82f4296d0861c9954b0205eb62c551"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0fd72a6b2ff388efc12d4725340cfa46"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Configuration.html#a0fd72a6b2ff388efc12d4725340cfa46">setLoadBalancePollIntervalMs</a> (std::chrono::milliseconds interval)</td></tr>
<tr class="memdesc:a0fd72a6b2ff388efc12d4725340cfa46"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the interval between IO thread polls.  <a href="#a0fd72a6b2ff388efc12d4725340cfa46">More...</a><br /></td></tr>
<tr class="separator:a0fd72a6b2ff388efc12d4725340cfa46"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac79de2f4b523de86f2625272685dbf96"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Configuration.html#ac79de2f4b523de86f2625272685dbf96">setLoadBalancePollIntervalBackoffPolicy</a> (<a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Configuration.html#a35f313cc4027da35f757762277a456b3">BackoffPolicy</a> policy)</td></tr>
<tr class="memdesc:ac79de2f4b523de86f2625272685dbf96"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set a backoff policy for the shared queue polling interval.  <a href="#ac79de2f4b523de86f2625272685dbf96">More...</a><br /></td></tr>
<tr class="separator:ac79de2f4b523de86f2625272685dbf96"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab2d38709b7471c4d31f0aeb5668b17a5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Configuration.html#ab2d38709b7471c4d31f0aeb5668b17a5">setLoadBalancePollIntervalNumBackoffs</a> (size_t numBackoffs)</td></tr>
<tr class="memdesc:ab2d38709b7471c4d31f0aeb5668b17a5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the number of backoffs.  <a href="#ab2d38709b7471c4d31f0aeb5668b17a5">More...</a><br /></td></tr>
<tr class="separator:ab2d38709b7471c4d31f0aeb5668b17a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5c7b190a980d1eddaf6e25f9b3bdb528"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Configuration.html#a5c7b190a980d1eddaf6e25f9b3bdb528">setCoroQueueIdRangeForAny</a> (const std::pair&lt; int, int &gt; &amp;coroQueueIdRangeForAny)</td></tr>
<tr class="memdesc:a5c7b190a980d1eddaf6e25f9b3bdb528"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the range of coroutine queueIds covered by <a class="el" href="../../d2/db0/structBloomberg_1_1quantum_1_1IQueue.html#aec9f17dc0836162032f0239b2415649eaed36a1ef76a59ee3f15180e0441188ad">IQueue::QueueId::Any</a> when using <a class="el" href="../../d0/da5/classBloomberg_1_1quantum_1_1Dispatcher.html#a5c160004cdf4b6c0a18bdaf138b650ac" title="Post a coroutine to run asynchronously.">Dispatcher::post</a>.  <a href="#a5c7b190a980d1eddaf6e25f9b3bdb528">More...</a><br /></td></tr>
<tr class="separator:a5c7b190a980d1eddaf6e25f9b3bdb528"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9800ff0a1eace92ec4e73bb154665263"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Configuration.html#a9800ff0a1eace92ec4e73bb154665263">getNumCoroutineThreads</a> () const</td></tr>
<tr class="memdesc:a9800ff0a1eace92ec4e73bb154665263"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the number of coroutine threads.  <a href="#a9800ff0a1eace92ec4e73bb154665263">More...</a><br /></td></tr>
<tr class="separator:a9800ff0a1eace92ec4e73bb154665263"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8203c700517a9648f6adcb8b4a899cf6"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Configuration.html#a8203c700517a9648f6adcb8b4a899cf6">getNumIoThreads</a> () const</td></tr>
<tr class="memdesc:a8203c700517a9648f6adcb8b4a899cf6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the number of IO threads.  <a href="#a8203c700517a9648f6adcb8b4a899cf6">More...</a><br /></td></tr>
<tr class="separator:a8203c700517a9648f6adcb8b4a899cf6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab947b023827f30b596763ada87b29834"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Configuration.html#ab947b023827f30b596763ada87b29834">getPinCoroutineThreadsToCores</a> () const</td></tr>
<tr class="memdesc:ab947b023827f30b596763ada87b29834"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check to see if coroutine threads are pinned to cores or not.  <a href="#ab947b023827f30b596763ada87b29834">More...</a><br /></td></tr>
<tr class="separator:ab947b023827f30b596763ada87b29834"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af42bc6d199d504b5c48764ce70477607"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Configuration.html#af42bc6d199d504b5c48764ce70477607">getLoadBalanceSharedIoQueues</a> () const</td></tr>
<tr class="memdesc:af42bc6d199d504b5c48764ce70477607"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if IO shared queues are load balanced or not.  <a href="#af42bc6d199d504b5c48764ce70477607">More...</a><br /></td></tr>
<tr class="separator:af42bc6d199d504b5c48764ce70477607"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1585e468f306dec0b951bbf9f21b0315"><td class="memItemLeft" align="right" valign="top">std::chrono::milliseconds&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Configuration.html#a1585e468f306dec0b951bbf9f21b0315">getLoadBalancePollIntervalMs</a> () const</td></tr>
<tr class="memdesc:a1585e468f306dec0b951bbf9f21b0315"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get load balance shared queue poll interval.  <a href="#a1585e468f306dec0b951bbf9f21b0315">More...</a><br /></td></tr>
<tr class="separator:a1585e468f306dec0b951bbf9f21b0315"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0ceee1c5685d596a97cb4034a47e360c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Configuration.html#a35f313cc4027da35f757762277a456b3">BackoffPolicy</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Configuration.html#a0ceee1c5685d596a97cb4034a47e360c">getLoadBalancePollIntervalBackoffPolicy</a> () const</td></tr>
<tr class="memdesc:a0ceee1c5685d596a97cb4034a47e360c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the backoff policy in load balance mode.  <a href="#a0ceee1c5685d596a97cb4034a47e360c">More...</a><br /></td></tr>
<tr class="separator:a0ceee1c5685d596a97cb4034a47e360c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a90a58610ecd1c524583ac42d97b91875"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Configuration.html#a90a58610ecd1c524583ac42d97b91875">getLoadBalancePollIntervalNumBackoffs</a> () const</td></tr>
<tr class="memdesc:a90a58610ecd1c524583ac42d97b91875"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the number of backoffs used.  <a href="#a90a58610ecd1c524583ac42d97b91875">More...</a><br /></td></tr>
<tr class="separator:a90a58610ecd1c524583ac42d97b91875"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0c0526228f0aa514ceeef92a3162cede"><td class="memItemLeft" align="right" valign="top">const std::pair&lt; int, int &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Configuration.html#a0c0526228f0aa514ceeef92a3162cede">getCoroQueueIdRangeForAny</a> () const</td></tr>
<tr class="memdesc:a0c0526228f0aa514ceeef92a3162cede"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the range [minQueueId, maxQueueId] of coroutine queueIds covered by <a class="el" href="../../d2/db0/structBloomberg_1_1quantum_1_1IQueue.html#aec9f17dc0836162032f0239b2415649eaed36a1ef76a59ee3f15180e0441188ad">IQueue::QueueId::Any</a> by the <a class="el" href="../../d0/da5/classBloomberg_1_1quantum_1_1Dispatcher.html" title="Parallel execution engine used to run coroutines or IO tasks asynchronously. This class is the main e...">Dispatcher</a>.  <a href="#a0c0526228f0aa514ceeef92a3162cede">More...</a><br /></td></tr>
<tr class="separator:a0c0526228f0aa514ceeef92a3162cede"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:af940e54b4dd63dd40e4a34140d366b11"><td class="memItemLeft" align="right" valign="top">static const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Configuration.html#af940e54b4dd63dd40e4a34140d366b11">getJsonSchema</a> ()</td></tr>
<tr class="memdesc:af940e54b4dd63dd40e4a34140d366b11"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the JSON schema corresponding to this configuration object.  <a href="#af940e54b4dd63dd40e4a34140d366b11">More...</a><br /></td></tr>
<tr class="separator:af940e54b4dd63dd40e4a34140d366b11"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acc089a7cf24dfc4fd54d50bfa41502ba"><td class="memItemLeft" align="right" valign="top">static const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Configuration.html#acc089a7cf24dfc4fd54d50bfa41502ba">getJsonSchemaUri</a> ()</td></tr>
<tr class="memdesc:acc089a7cf24dfc4fd54d50bfa41502ba"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the schema URI used to resolve remote JSON references '$ref'.  <a href="#acc089a7cf24dfc4fd54d50bfa41502ba">More...</a><br /></td></tr>
<tr class="separator:acc089a7cf24dfc4fd54d50bfa41502ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Member Enumeration Documentation</h2>
<a id="a35f313cc4027da35f757762277a456b3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a35f313cc4027da35f757762277a456b3">&#9670;&nbsp;</a></span>BackoffPolicy</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Configuration.html#a35f313cc4027da35f757762277a456b3">Bloomberg::quantum::Configuration::BackoffPolicy</a> : int</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">strong</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a35f313cc4027da35f757762277a456b3a32a843da6ea40ab3b17a3421ccdf671b"></a>Linear&#160;</td><td class="fielddoc"><p>Linear backoff. </p>
</td></tr>
<tr><td class="fieldname"><a id="a35f313cc4027da35f757762277a456b3ac1e19c09f700938f0ff7f1fd4722a3ac"></a>Exponential&#160;</td><td class="fielddoc"></td></tr>
</table>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a0c0526228f0aa514ceeef92a3162cede"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0c0526228f0aa514ceeef92a3162cede">&#9670;&nbsp;</a></span>getCoroQueueIdRangeForAny()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const std::pair&lt;int, int&gt;&amp; Bloomberg::quantum::Configuration::getCoroQueueIdRangeForAny </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Gets the range [minQueueId, maxQueueId] of coroutine queueIds covered by <a class="el" href="../../d2/db0/structBloomberg_1_1quantum_1_1IQueue.html#aec9f17dc0836162032f0239b2415649eaed36a1ef76a59ee3f15180e0441188ad">IQueue::QueueId::Any</a> by the <a class="el" href="../../d0/da5/classBloomberg_1_1quantum_1_1Dispatcher.html" title="Parallel execution engine used to run coroutines or IO tasks asynchronously. This class is the main e...">Dispatcher</a>. </p>
<dl class="section return"><dt>Returns</dt><dd>queueIdRange The range of queueIds that <a class="el" href="../../d2/db0/structBloomberg_1_1quantum_1_1IQueue.html#aec9f17dc0836162032f0239b2415649eaed36a1ef76a59ee3f15180e0441188ad">IQueue::QueueId::Any</a> covers </dd></dl>

</div>
</div>
<a id="af940e54b4dd63dd40e4a34140d366b11"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af940e54b4dd63dd40e4a34140d366b11">&#9670;&nbsp;</a></span>getJsonSchema()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static const std::string&amp; Bloomberg::quantum::Configuration::getJsonSchema </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Get the JSON schema corresponding to this configuration object. </p>
<dl class="section return"><dt>Returns</dt><dd>The draft-04 compatible schema. </dd></dl>

</div>
</div>
<a id="acc089a7cf24dfc4fd54d50bfa41502ba"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acc089a7cf24dfc4fd54d50bfa41502ba">&#9670;&nbsp;</a></span>getJsonSchemaUri()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static const std::string&amp; Bloomberg::quantum::Configuration::getJsonSchemaUri </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Get the schema URI used to resolve remote JSON references '$ref'. </p>
<dl class="section return"><dt>Returns</dt><dd>The URI. </dd></dl>

</div>
</div>
<a id="a0ceee1c5685d596a97cb4034a47e360c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0ceee1c5685d596a97cb4034a47e360c">&#9670;&nbsp;</a></span>getLoadBalancePollIntervalBackoffPolicy()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Configuration.html#a35f313cc4027da35f757762277a456b3">BackoffPolicy</a> Bloomberg::quantum::Configuration::getLoadBalancePollIntervalBackoffPolicy </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the backoff policy in load balance mode. </p>
<dl class="section return"><dt>Returns</dt><dd>The backoff policy used. </dd></dl>

</div>
</div>
<a id="a1585e468f306dec0b951bbf9f21b0315"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1585e468f306dec0b951bbf9f21b0315">&#9670;&nbsp;</a></span>getLoadBalancePollIntervalMs()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::chrono::milliseconds Bloomberg::quantum::Configuration::getLoadBalancePollIntervalMs </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get load balance shared queue poll interval. </p>
<dl class="section return"><dt>Returns</dt><dd>The number of milliseconds. </dd></dl>

</div>
</div>
<a id="a90a58610ecd1c524583ac42d97b91875"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a90a58610ecd1c524583ac42d97b91875">&#9670;&nbsp;</a></span>getLoadBalancePollIntervalNumBackoffs()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">size_t Bloomberg::quantum::Configuration::getLoadBalancePollIntervalNumBackoffs </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the number of backoffs used. </p>
<dl class="section return"><dt>Returns</dt><dd>The number of backoffs. </dd></dl>

</div>
</div>
<a id="af42bc6d199d504b5c48764ce70477607"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af42bc6d199d504b5c48764ce70477607">&#9670;&nbsp;</a></span>getLoadBalanceSharedIoQueues()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool Bloomberg::quantum::Configuration::getLoadBalanceSharedIoQueues </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Check if IO shared queues are load balanced or not. </p>
<dl class="section return"><dt>Returns</dt><dd>True or False. </dd></dl>

</div>
</div>
<a id="a9800ff0a1eace92ec4e73bb154665263"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9800ff0a1eace92ec4e73bb154665263">&#9670;&nbsp;</a></span>getNumCoroutineThreads()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int Bloomberg::quantum::Configuration::getNumCoroutineThreads </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the number of coroutine threads. </p>
<dl class="section return"><dt>Returns</dt><dd>The number of threads. </dd></dl>

</div>
</div>
<a id="a8203c700517a9648f6adcb8b4a899cf6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8203c700517a9648f6adcb8b4a899cf6">&#9670;&nbsp;</a></span>getNumIoThreads()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int Bloomberg::quantum::Configuration::getNumIoThreads </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the number of IO threads. </p>
<dl class="section return"><dt>Returns</dt><dd>The number of threads. </dd></dl>

</div>
</div>
<a id="ab947b023827f30b596763ada87b29834"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab947b023827f30b596763ada87b29834">&#9670;&nbsp;</a></span>getPinCoroutineThreadsToCores()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool Bloomberg::quantum::Configuration::getPinCoroutineThreadsToCores </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Check to see if coroutine threads are pinned to cores or not. </p>
<dl class="section return"><dt>Returns</dt><dd>True or False. </dd></dl>

</div>
</div>
<a id="a5c7b190a980d1eddaf6e25f9b3bdb528"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5c7b190a980d1eddaf6e25f9b3bdb528">&#9670;&nbsp;</a></span>setCoroQueueIdRangeForAny()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Bloomberg::quantum::Configuration::setCoroQueueIdRangeForAny </td>
          <td>(</td>
          <td class="paramtype">const std::pair&lt; int, int &gt; &amp;&#160;</td>
          <td class="paramname"><em>coroQueueIdRangeForAny</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the range of coroutine queueIds covered by <a class="el" href="../../d2/db0/structBloomberg_1_1quantum_1_1IQueue.html#aec9f17dc0836162032f0239b2415649eaed36a1ef76a59ee3f15180e0441188ad">IQueue::QueueId::Any</a> when using <a class="el" href="../../d0/da5/classBloomberg_1_1quantum_1_1Dispatcher.html#a5c160004cdf4b6c0a18bdaf138b650ac" title="Post a coroutine to run asynchronously.">Dispatcher::post</a>. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">coroQueueIdRangeForAny</td><td>The range [minQueueId, maxQueueId] of queueIds that <a class="el" href="../../d2/db0/structBloomberg_1_1quantum_1_1IQueue.html#aec9f17dc0836162032f0239b2415649eaed36a1ef76a59ee3f15180e0441188ad">IQueue::QueueId::Any</a> will cover. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd>if the provided range is empty or invalid, then the default range of std::pair&lt;int, int&gt;(0, <a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Configuration.html#a9800ff0a1eace92ec4e73bb154665263" title="Get the number of coroutine threads.">getNumCoroutineThreads()</a>-1) will be used </dd></dl>

</div>
</div>
<a id="ac79de2f4b523de86f2625272685dbf96"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac79de2f4b523de86f2625272685dbf96">&#9670;&nbsp;</a></span>setLoadBalancePollIntervalBackoffPolicy()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Bloomberg::quantum::Configuration::setLoadBalancePollIntervalBackoffPolicy </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Configuration.html#a35f313cc4027da35f757762277a456b3">BackoffPolicy</a>&#160;</td>
          <td class="paramname"><em>policy</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set a backoff policy for the shared queue polling interval. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">policy</td><td>The backoff policy to use. Default is 'Linear'. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a0fd72a6b2ff388efc12d4725340cfa46"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0fd72a6b2ff388efc12d4725340cfa46">&#9670;&nbsp;</a></span>setLoadBalancePollIntervalMs()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Bloomberg::quantum::Configuration::setLoadBalancePollIntervalMs </td>
          <td>(</td>
          <td class="paramtype">std::chrono::milliseconds&#160;</td>
          <td class="paramname"><em>interval</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the interval between IO thread polls. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">interval</td><td>Interval in milliseconds. Default is 100ms. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>Setting this to a higher value means it may take longer to react to the first IO task posted, and vice-versa if the interval is lower. </dd></dl>

</div>
</div>
<a id="ab2d38709b7471c4d31f0aeb5668b17a5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab2d38709b7471c4d31f0aeb5668b17a5">&#9670;&nbsp;</a></span>setLoadBalancePollIntervalNumBackoffs()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Bloomberg::quantum::Configuration::setLoadBalancePollIntervalNumBackoffs </td>
          <td>(</td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>numBackoffs</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the number of backoffs. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">numBackoffs</td><td>The number of backoff increments. Default is 0. When the number of backoffs is reached, the poll interval remains unchanged thereafter. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="acc82f4296d0861c9954b0205eb62c551"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acc82f4296d0861c9954b0205eb62c551">&#9670;&nbsp;</a></span>setLoadBalanceSharedIoQueues()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Bloomberg::quantum::Configuration::setLoadBalanceSharedIoQueues </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Load balancee the shared IO queues. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>If set to true, posting to the 'any' IO queue will result in the load being spread among N queues. This mode can provide higher throughput if dealing with high task loads. Default is false. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>To achieve higher performance, the threads run in polling mode which increases CPU usage even when idle. </dd></dl>

</div>
</div>
<a id="a422373d17db88e6990ee69796b5f5cf3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a422373d17db88e6990ee69796b5f5cf3">&#9670;&nbsp;</a></span>setNumCoroutineThreads()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Bloomberg::quantum::Configuration::setNumCoroutineThreads </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>num</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the number of threads running coroutines. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">num</td><td>The number of threads. Set to -1 to have one coroutine thread per core. Default is -1. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="af1735770c472f6c312e161bc83646099"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af1735770c472f6c312e161bc83646099">&#9670;&nbsp;</a></span>setNumIoThreads()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Bloomberg::quantum::Configuration::setNumIoThreads </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>num</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the number of threads running IO tasks. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">num</td><td>The number of threads. Default is 5. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a769faa15f9cda530a95d9bf1f93764fc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a769faa15f9cda530a95d9bf1f93764fc">&#9670;&nbsp;</a></span>setPinCoroutineThreadsToCores()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Bloomberg::quantum::Configuration::setPinCoroutineThreadsToCores </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Indicate if coroutine threads should be pinned to a core. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>True or False. Default is False. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>For best performance, the number of coroutine threads should be &lt;= the number of cores in the system. </dd></dl>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="../../d6/db9/namespaceBloomberg.html">Bloomberg</a></li><li class="navelem"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html">quantum</a></li><li class="navelem"><a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Configuration.html">Configuration</a></li>
    <li class="footer">Generated by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="../../doxygen.png" alt="doxygen"/></a> 1.8.15 </li>
  </ul>
</div>
</body>
</html>
